/**
 * 
 */
package clids.ex2.orders;

import clids.ex2.filters.AbstractFilter;
import clids.ex2.filters.AfterFilter;
import clids.ex2.filters.BadFilterNameException;
import clids.ex2.filters.BeforeFilter;
import clids.ex2.filters.BetweenFilter;
import clids.ex2.filters.DefaultFilter;
import clids.ex2.filters.ExecutableFilter;
import clids.ex2.filters.FileFilter;
import clids.ex2.filters.GreaterThanFilter;
import clids.ex2.filters.HiddenFilter;
import clids.ex2.filters.PrefixFilter;
import clids.ex2.filters.SmallerThanFilter;
import clids.ex2.filters.SuffixFilter;
import clids.ex2.filters.WriteableFilter;

/**
 * @author Li0r
 *
 */
public class OrderFactory {

	public static OrderInterface GetOrder(String nameOfOrder) throws BadOrderNameException {
		switch (nameOfOrder){
		case "abs":
			return new AbsOrder();
		case "file":
			return new FileOrder();
		case "mod":
			return new ModOrder();
		case "size":
			return new SizeOrder();
		}
		// TODO Auto-generated catch block
		throw new BadOrderNameException();
	}

}
